home *** CD-ROM | disk | FTP | other *** search
-
- Documentation to Comgraph
-
-
- """""""""""""""""""""""""""
- """""""""""""""""""""""
- """""""""""""""""""
-
-
- Configuration needed : Kickstart 1.2 or higher
- 1 MB Memory
-
- Libraries needed in the systemdirectory LIBS:
- MathIEEEDoubBas.library
- MathIEEEDoubTrans.library
-
- Devices needed in the systemdirectory DEVS:
- printer.device
- parallel.device
- serial.device
-
-
- Comgraph is a 2D-functionplotter, handling up to 10 functions and 5 of their
- differentations at the same time. Further it has the possibility to
- create 10 bands per function (including their differentations!). The
- screen used has always the same resolution as the Workbenchscreen, so also
- the new resolutions can be used, whereas the printer output is not simply
- a hardcopy (is also possible), but a to the resolution of the printer
- fitted result. The size (in cm) and the density of the print can be
- choosen freely.
- A build-in curvediskussion calculates the first and second symbolic
- differentiation and determine zero digits, extrema, turning points
- (saddle points), pole digits and definition gaps and symmetry.
- Tables of values can be printed, for those who like more to draw
- the functions by themselves.
- Furthermore the program has a calculator, prime number calculations
- and prime factor reduction.
- The programm contains a german- and also an english version.
- It uses routines working with LONGREAL numbers (64 Bit floating point)
- and so they are a bit slow, but they work in smallest areas exact.
- The loss of speed against FFP (Fast Floating Point) is less bad than
- inexact values.
-
-
- Start of the program :
-
- From the CLI :
- Stack 100000 (can also work with less memory)
- Comgraph [-gb] [+gb]
-
- From the WorkBench :
- If there are no options to start with, just doubleclick the icon
- of Comgraph, else click that icon once, press SHIFT and click
- all wished options, the last option have to be doubleclicked.
-
- The options :
- +g install german version
- -g install english version
- +b show all bitplanes
- -b kill one bitplane => memoryprofit (loss of colors)
-
- Standard the options are set to :
- english version with all bitplanes
-
- Furthermore there is the possibility to set the options by the
- Environmentsystem :
- SetEnv Comgraph [-gb] [+gb]
-
- When the environment is used, all options are set to the given values.
- Given options at the start of the program have a higher priority than
- the environment options.
-
- After the start an empty screen should appear with a titlebar containing
- the name of the program and the copyright.
-
-
-
- The Menus :
-
- Project :
-
- Info <AMIGA>+A
- shows informations about the program, the copyright and the free
- Chip- and FastMemory.
-
- Workbench <AMIGA>+B
- close/open whe WorkBench to spare ca. 45 KB Memory (If there is
- less than 200 KB ChipMem at the start of the program, it tries to
- close the WorkBench automatically). In order to close the
- WorkBench there may only be WorkBenchWindows on it!
-
- Quit <AMIGA>+Q
- leaves the program after a security check.
-
-
- Plotter :
-
- Coordinate system <AMIGA>+S
- asks the x- and y-axis interval to be displayed, on which values
- marks should be set (e.g. an interval [0;100] could have marks
- lying 10 units apart from each other, so 11 marks would be
- created. If a mark would be set at each unit, there would be
- 101 marks that can not clearly be distuingished!). The number
- of points between the marks are displayed in a grid lying over
- the coordinate system. Each part of that grid has a certain
- number of points, normaly 10 points in each direction (dividing
- the marks in 10 parts).
- Logarithmic scales can be installed in X-, Y- or in both directions
- by selecting the respective gadgets. Because negative logarithm do not
- exist, all logarithmic scales start at 1. The marks would
- in higher areas accumulate, so these marks will not be set in
- equal distances. Each mark has twice the value of the former (e.g.
- 1,2,4,8,16...).
-
- Zoom <AMIGA>+Z
- creates a cross on the screen after selecting, that can be moved
- with the mouse over the screen. By a simple click on the left
- mousebutton one corner of the zoomwindow is choosen. After moving
- the pointer to the opposite corner of that zoomwindow and
- clicking the left mousebutton the second time the area will be
- zoomed.
- This function will not work if something was changed in the
- functions or in the coordinate system between the drawing of the
- curves and the selection of 'Zoom'. In that case the curves have
- to be drawn again (at least a part of them).
-
- Enter functions <AMIGA>+E
- asks at first what function should be edited. To do that a
- requester is opened showing all functions in memory.
- After a function was choosen an other requester is opened where
- the function terms can be edited. The format of the terms will
- be given later on.
- Curve bands will be used with a constant in the function term that
- can be replaced by given values. So functions are possible that
- have no concrete value for a variable (e.g. f(x)=k*x^2 ). It is
- possible to draw the graph for different values of 'k' at the
- same time. The number of bands (curves) of one function that
- should be drawn must be set on values over 1, but only if there
- is really a constant 'k' in the term. Otherwise the same curve will
- be drawn several times over itself and that will make the program
- lots slower.
- Every (!) function can have up to ten bands that can be displayed at
- the same time on the screen. Next the start value of the constant have
- to be choosen and its step that will be added on the constant for
- the next band. So pseudo-3D functions are possible.
- At least the number of differentiations is asked that will be
- drawn on the screen. The given number of differentiations will be
- drawn for all bands of the actual function! The maximal number
- of derive functions are five. As higher the degree of the derive
- as more time will be needed to be drawn! So unneeded differentiations
- should not be drawn.
-
- The syntax of the functions terms :
- Small and capital letters (also mixed) are allowed, as well
- as Spaces (not in names of functions or of constants).
- Brackets can be set everywhere as long as they maintain the
- mathematical order.
-
- The following commands are allowed :
- x : X-axis value
- +,-,*,/,^ : The five basic kinds of calculation
- () : Brackets (to set priorities)
- sin(),cos() : Sine and cosine
- tan(),cot() : Tangens and cotangens
- asin(),acos() : Arcussine and arcuscosine
- atan(),acot() : Arcustangens and Arcuscotangens
- sinh(),cosh() : Sine and cosine hyperbolicus
- tanh(),coth() : Tangens and cotangens hyperbolicus
- asinh(),acosh() : Arcussine and arcuscosine hyperbolicus
- atanh(),acoth() : Arcustangens and arcuscotangens hyperbolicus
- exp() : Exponentialfunction (e^x)
- sqr() : Squareroot
- log() : decadentic logarithm (to the basis 10)
- ln() : Logarithm naturalis (to the basis e)
- abs() : Absolut value (Betragsfunktion)
-
- k : 'Constant' of the curve bands
-
- pi : Circle number (ca. 3.14159265358979323846)
- e : Eulers number (ca. 2.71828182845904523536)
- epso : Electric fieldconstant (ca. 8.8542*10^(-12))
- myo : Magnetic fieldconstant (PI*4.0*10^(-7))
- c : Lightspeed (ca. 2.997925*10^8)
- h : PLANK-Constant (ca. 6.6256*10^(-34))
- qe : Basic electric charge (ca. 1.6021*10^(-19))
- me : Mass of an electron (calm) (ca. 9.1091*10^(-31))
- u : Atomic Massunit (ca. 1.660277*10^(-27))
- gk : Gravityconstant (ca. 6.67*10^(-11))
-
- Numeric constants can be given in this way (e.g.) :
- 1 ! -2 ! 5.6521 ! -3.998 ! 2.543E+08 ! 42.4432E-32
-
- Physical units will not be accepted!
-
- To use functions not implemented please build other
- functions e.g. from the appendix of the Basic-Manual.
- (e.g. logarithm to the basis b => log(x)/log(b) )
-
- Further there is something special with negating signs.
- This sign has the highest priority. -x^2 is calculated
- intern as (-x)^2. To set the term correct should be used
- brackets : -(x^2). But you should not only use brackets
- by using this sign, also if you use several divisions
- like 3/x/k, where always should been set brackets (either
- (3/x)/k or 3/(x/k) )!
-
- All open brackets have to be closed!
-
- Draw functions <AMIGA>+C
- opens again a requester, where the functions to be drawn
- could be choosen. The first letters of the functions
- are written behind the individual gadgets. After the selection
- the plotter starts with 'OK' or cancels the selection with
- 'CANCEL'.
- Pressing Space stops the drawing process. Not the whole interval
- is needed to be drawed in order to zoom or to print the graph
- (only if you wish an hardcopy you should draw the graph completly
- on the screen!).
-
- Coordinates <AMIGA>+W
- draws again a cross on the screen at the actual mouseposition
- and its coordinates in the graphs world in the right Titlebar.
- This function can be ended after pressing the left mousebutton.
-
- Discussion <AMIGA>+K
- asks at first the function to be discussed. A second requester
- asks the interval to be searched, which 'k' constant of a band should
- be used and how high the search density should be. As higher the
- density as better the result and the longer takes the calculations.
- The given value is enough for the most functions.
- Then there will be opened a window where are two gadgets. 'GO ON'
- turns the 'page' if it was fully written. 'CANCEL' will end
- the discussion.
- At first the first and second differentiation of the choosen
- function will be generated and after that the zero digits, extrema
- (Max = maximum, Min = minimum), turning points (T = turning point,
- S = saddle point), pole digits and definition gaps as well as
- symmetry like (periodical) axis- and pointsymmetry through any (!)
- axis/point.
- To leave the discussion at the end by selecting the 'GO ON' gadget.
- If you want to get easily good differentiations you should do
- this : Get the first differentiation of the wanted function and
- optimize it by yourself. Then start a new function with that
- optimized differentiation and make again a discussion of the
- (new) function. The first differentiation (that is the second
- of the basic function) can also be optimized and so on. Using
- this method as often as needed gives you simple and quite good
- optimized differentiations that else have to be calculated by
- yourself.
-
- Calculate integrals <AMIGA>+I
- wants to know what type of integration should be used. There
- are different types to be choosen :
-
- Integral :
- Calculates the normal integral
-
- Area :
- Calculates the area between the graph and the x-axis
- (always positiv!)
-
- Area between two functions :
- Calculates the area between two functions (always positiv!)
-
- Rotation body :
- Calculates the volume of a body that will formed by turning
- the function around the x-axis three dimensionaly, so the
- function is the outline of the body
-
- Surface of rotation body :
- Instead calculating the volume, the surface of such a body
- is calculated
-
- Curve length :
- Calculates the length of the curve in an interval
-
- The Simpson-rule is used to calculate the integrals. It could
- take some seconds to get the result, depending on the density
- set. As higher the density as preciser the result and longer
- the time needed. The given value holds the error of the
- result down by some ten thousandth. The error of the Simpson-rule
- could also easily be estimated more precise by using this term
- (b-a)^5/(180*(2*m)^4)*(max[a,b] f[4](x)) with a = start of the
- interval, b = end, m = density of integration, max[a,b] f[4](x) =
- maximum value of the fourth differentiation in the interval [a;b].
- So you can see that by calculating polynoms up to the third
- order nearly no errors may occur!
-
- Calculator <AMIGA>+T
- opens a window with a scientific calculatoremulation. This
- calculator should only make small conrollcalculations possible
- and should not replace a full calculator!
- Clicking on the 'OK' gadget will leave the function.
- The key shortcuts are these :
-
- Expression: Shortcut: Meaning:
- 1/x k Reciprocal value
- x^2 q Square
- y^x y y high x
- SQR w Squareroot
- EE e Exponetialdisplay and -input
- x! f Faculty
- SIN s Sinue
- COS c Cosine
- TAN t Tangens
- LOG l Decantic logarithm
- LNx n natural logarithm
- ASIN S Arcus Sine
- ACOS C Arcus Cosine
- ATAN T Arcus Tangens
- 10^x L 10th potency
- e^x N Exponentialvalue
- DRG d Change of the angleunit
- sDRG D Change of the unit and value
- % % Percentage
- xWy z y root of x
- PI p Circle number PI
- e a Eulers number
- x<>y <TAB> Changes value with memory
- +/- ` Changes the sign
- C <DEL> Clear display
- = <RETURN> Calculates the input
-
- Lin. equations <AMIGA>+G
- is a module to solve lineare equations with two and up to seven
- unknown. At first the number of unknown has to give in.
- Then a new window opens with the right number of coefficients.
- Behind the equals sign had to put the results of each term.
- Until all values are correct, the computer calculates after
- selecting the 'CALC' gadget the variables. It places the results
- under the coefficients.
- The program uses Gaußs-eliminationrule, so it is quite fast and
- needs only some seconds to calculate a result.
-
- Prime factor reduction <AMIGA>+M
- asks for an integer number to reduct it into their prime factors.
- The operation is similar to the discussion.
-
- Calculate prime numbers <AMIGA>+N
- opens a window and asks the start and end value. Then this
- function calculates prime numbers until the user stops or
- the end value is reached.
- The operation is also similar to the discussion.
-
-
- Printer :
-
- Print functions <AMIGA>+P
- tests if the printer preferences was set and if not it first
- calls the preferences. Please read the documentation at
- 'Printer preferences'.
- After set all values needed, the computer opens a statuswindow
- to show the progress in print and to stop the print by
- selecting the 'CANCEL' gadget. It could take some seconds to
- abort the print, because the computer calculates the actual
- stripe and print it before the computer cancels.
- The computer prints everything (and only that) what is on
- the screen (at least at a part of the screen).
- If functions were edited or the coordinate system was changed
- since the last call of 'Draw functions' the curves have to
- drawn again (it must not fill the screen completly, because
- the print is not a hardcopy!). The computer calculates
- all functions new for the printer to get an highresolutive Image.
- The DMA-Screen turn off is possible with 'HELP'. This increases
- the speed up to the factor two! See also the section about the
- general use of keys.
-
- Print coordinate system <AMIGA>+O
- prints the intervals of the coordinate system, its marks and
- further informations (like e.g. a logarithmic display) as Text.
-
- Discussion <AMIGA>+D
- is excatly the same menupoint like in the menu 'Plotter' only
- here all screenoutput is also send to the printer.
-
- Table of function values <AMIGA>+V
- asks for the number of values, the startvalue, the step that
- will be added and a value for the constant 'k' (if existent in
- the term).
- Then the printer gives out a table for the selected function
- in this order : X-value, function value, first three
- differentiations values and the root function value.
- So can easiely own graphs be drawn, if the quality of the print
- is to bad or no graphics printer is available. (You can also
- use a program to send the printer graphics into a file, so you
- can read it afterwards.)
-
- Prime factor reduction <AMIGA>+X
- Calculate prime numbers <AMIGA>+Y
- See the documentation under the menu 'Plotter' only the output
- is also send to the printer.
-
- Printing Preferences <AMIGA>+F
- opens a window in order to edit the printer preferences. The commen
- preferences have to be set before the program is started.
- With the keys '1'-'7' or selecting the individual gadget the
- printing density is choosen. It has the same effect as in the
- usual Preferences. The actual printing density is written under
- these gadgets in DPI (Dots per Inch). These values are given
- by the hardware of the choosen printer. Density 7 is always the
- highest density and so the highest resolution. Under these values
- the size of the inserted paper is given. There can also changed
- the size of the print to any smaller values. So scaled prints
- are possible (e.g. in the coordinate system with X and Y from
- -5 to 5 and 10cm x 10cm printing size every unit is nearly excact
- 1cm long! So can easily printing models for school and university
- be created). But as higher the resolution as longer will take the
- time to print.
- The last input is the distance from the left margin. So two or
- more graphs can be printed side by side. To exit these preferences
- select 'OK' or 'CANCEL', where 'CANCEL' will not accept the
- changes made.
-
- Screenhardcopy <AMIGA>+H
- is only needed if the print is urgent or only a rough print of
- the graph is needed. This print uses also the printing preferences.
- To make a hardcopy the screen have to be completly drawn, because
- only the screencontent is printet! The screenbar will not be
- printed.
-
-
-
- General use of the keys :
-
- In nearly all parts of the program have particular key a special
- effect. Here is a list of the keys that can be used instead of
- selecting the gadgets (that is only possible if no stringgadget
- is activated!) :
-
- <SPACE>,'w','o' OK or GO ON, CALC (positive gadget)
- 'c' CANCEL, etc. (negative gadget)
- 'n' Next (in Enter functions)
- 'v' Last (in Enter functions)
- 'x','y' Set logarithmic system on/off
- (in Coordinate system)
- <RETURN> Switches to the next stringgadget. If none was
- activated the first will be activated.
- With the help of <RETURN> can all gadgets
- be selected until none is activated any more.
- Then the booleangadgets can be selected by
- pressing the individual keys (e.g. 'OK',
- 'CANCEL').
- <HELP> Turns of all DMA (Direct Memory Access).
- The program will run twice the speed on a
- usual AMIGA computer.
-
-
-
- Information to the copyright :
-
- © 1990-1993 by Andre Wiethoff. This program is Shareware and copyright-
- protected. This program may only given away unmodified together with the
- documentations.
- Those who often use this program, should recompense my work with some
- money. Depending on the interest on my program, it can be improved
- (e.g. vectorcalculations, etc.) and definitly freed from errors.
- Those who found errors in this program or have some ideas how to improve
- it should contact me please.
-
-
- My contactaddress :
-
- Andre Wiethoff
- Höhenweg 2
- 57392 Schmallenberg
- Germany
-
-
- P.S. : This documentation is a bit funny, eh? I think that there are a lot
- of new word creations and hard grammatical mistakes. I gave my
- best, but I was the worst pupil in my english class. So if anybody
- has a desire to correct this documentation and make it readable
- I would be pleased to get a corrected copy.
-
-